package global

import (
	"fmt"
	//"github.com/go-redis/redis"
	"go-fast/pkg/config"
	"go-fast/pkg/db"
	"go-fast/pkg/log"
	"go.uber.org/zap"
)

var (
	// Conf 配置
	Conf *config.Config
	// Log 日志
	Log *zap.SugaredLogger
	// DB 数据库连接
	DB *db.SqlDB
	// Redis 连接
	//Redis *redis.Client
)

// InitGlobal 初始化全局变量
func InitGlobal(confPath string) (err error) {
	// 初始化配置文件
	if Conf, err = config.InitConfig(confPath); err != nil {
		return err
	}
	fmt.Printf("config:%+v", Conf)

	// 初始化日志
	if Log, err = log.InitLogger(Conf.Log); err != nil {
		panic(err)
	}

	// 初始化数据库连接
	if DB, err = db.NewDB(Conf.DB); err != nil {
		panic(err)
	}
	return nil
}

// Close 关闭服务
func Close() {
	DB.Close()
	//Redis.Close()
}
